package cn.wolfcode.wolf2w.service;

import cn.wolfcode.wolf2w.domain.UserInfo;

import java.util.List;

/**
 * 用户业务层接口
 */
public interface IUserInfoService {

    /**
     * 插入单个用户对象
     * @param userInfo
     */
    void insert(UserInfo userInfo);

    /**
     * 根据id删除某个用户对象
     * @param id
     */
    void deleteById(String id);

    /**
     * 根据id修改某个用户对象
     * @param userInfo
     */
    void updateById(UserInfo userInfo);

    /**
     * 根据id查询某个用户对象
     * @param id    查询条件
     * @return  用户对象
     */
    UserInfo selectById(String id);

    /**
     * 查询所有用户对象
     * @return  userInfo的list集合
     */
    List<UserInfo> selectAll();

    boolean findByPhone(String phone);

    void sendVerifyCode(String phone, String smsUrl, String smsAppkey);

    void regist(String phone, String nickname, String password, String rpassword, String verifCode);

    UserInfo login(String phone, String password);

    /**
     * 查询目的地下的用户
     * @param keyword
     * @return
     */
    List<UserInfo> queryCity(String keyword);
}
